/**
 * 苹果手机子类：实现iOS系统专属功能
 */
public class Iphone extends Phone {
    // 子类专属属性：iOS系统版本
    private String iosVersion;

    // 1. 构造方法：调用父类构造+初始化专属属性
    public Iphone(String model, int ram, int storage, String iosVersion) {
        super("Apple", model, ram, storage); // 父类构造：品牌固定为Apple
        this.iosVersion = iosVersion;
    }

    // 2. 重写抽象方法：实现苹果专属逻辑
    @Override
    public String takePhoto() {
        // 个性化：苹果原相机+杜比视界
        return super.getBrand() + super.getModel() + " 使用原相机拍照，支持杜比视界，当前相机：" + currentCamera;
    }

    @Override
    public String showSystemInfo() {
        // 个性化：显示iOS系统信息
        return "【iOS系统】品牌：" + brand + "，型号：" + model + "，内存：" + ram + "GB，系统版本：" + iosVersion;
    }

    @Override
    public String makeCall(String phoneNumber) {
        // 个性化：FaceTime通话提示
        consumePower(2); // 通话2分钟，调用父类耗电方法
        return "通过FaceTime拨打号码：" + phoneNumber + "，通话中...（iOS专属通话界面）";
    }

    @Override
    public String sendMessage(String phoneNumber, String content) {
        // 个性化：iMessage样式
        consumePower(1); // 发短信1分钟，耗电1%
        return "通过iMessage给 " + phoneNumber + " 发送短信：" + content + "（已同步至所有苹果设备）";
    }

    // 3. 子类专属方法：苹果面容解锁（父类无此方法）
    public String faceIDUnlock() {
        consumePower(1);
        return brand + model + " 面容ID解锁成功！";
    }

    // 4. 重写父类通用方法（可选）：修改充电逻辑（苹果快充功率限制）
    @Override
    public String charge(int powerWatt) {
        if (powerWatt > 27) {
            return "苹果设备最大支持27W快充，已自动调整功率！";
        }
        // 调用父类充电逻辑，返回结果
        return super.charge(powerWatt);
    }

    // 专属属性的getter
    public String getIosVersion() {
        return iosVersion;
    }
}

